﻿using Microsoft.EntityFrameworkCore;

namespace DDD.EFCore
{
    public interface IUnitOfWork : ITransaction, IDisposable
    {
        Task<int> SaveChangeAsync(CancellationToken cacellationToken = default);
        Task<bool> SaveUnitOfWorkAsync(CancellationToken cacellationToken = default);
    }

    //public interface IUnitOfWork<TContext> : ITransaction, IDisposable
    //where TContext : DbContext
    //{
    //    Task<int> SaveChangeAsync(CancellationToken cacellationToken = default);
    //    Task<bool> SaveUnitOfWorkAsync(CancellationToken cacellationToken = default);
    //}
}
